package zouran.entity.intentityimg;


import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.util.Date;


@Data
public class ImitateEarthquakepara {

    @JsonProperty("mPara")
    private String mPara;

    @JsonProperty("maxPara")
    private String maxPara;

    @JsonProperty("depPara")
    private String depPara;

    @JsonProperty("Time")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")
    private Date Time;

    @JsonProperty("lonPara")
    private String lonPara;

    @JsonProperty("latPara")
    private String latPara;

    @JsonProperty("intentity")
    private String intentity;

    @JsonProperty("numIntentity")
    private String numIntentity;

    @JsonProperty("zoomPara")
    private ZoomPara zoomPara;

    @JsonProperty("paraListR1")
    private ParaList paraListR1;

    @JsonProperty("paraListR2")
    private ParaList paraListR2;

    @JsonProperty("paraListR3")
    private ParaList paraListR3;

    @JsonProperty("imgParaForm")
    private ImgParaForm imgParaForm;

    // 内部类
    @Data
    public static class ZoomPara {
        @JsonProperty("longMagn")
        private double longMagn;

        @JsonProperty("shortMagn")
        private double shortMagn;

        @JsonProperty("angleMagn")
        private double angleMagn;
    }

    @Data
    public static class ParaList {
        @JsonProperty("longRadius")
        private double longRadius;

        @JsonProperty("shortRadius")
        private double shortRadius;

        @JsonProperty("angle")
        private double angle;

        @JsonProperty("intensity")
        private double intensity;

        @JsonProperty("earthquakeId")
        private String earthquakeId;
    }

    @Data
    public static class ImgParaForm {
        @JsonProperty("imgsize")
        private String imgsize;

        @JsonProperty("scale")
        private String scale;

        @JsonProperty("traffic")
        private String traffic;

        @JsonProperty("zoom")
        private String zoom;
    }
}